home *** CD-ROM | disk | FTP | other *** search
Text File | 2004-07-20 | 72.6 KB | 1,874 lines |
- Project gap "GIMP Animation Package" version 2.0
-
- --------------------------------------------------------------------
- Introduction
- --------------------------------------------------------------------
-
- The GIMP is a great program for creating and manipulating pixelbased
- images of many types. The plug-in concept and the procedural database
- allows programmers to extend the GIMP's functions in many ways.
-
- In the GIMP there are some plug-in's supporting animation features,
- based on layers where each layer of the image is considered as one
- frame of the animation. GIMP-GAP is a collection of plug-ins that
- extends the GIMP's animation capabilities by supporting the creation
- of more complex animations.
-
- Idea:
- With the help of the GIMP-GAP plug-in collection
- GIMP can operate on a series of images as if they were
- a single one.
- Each frame of an animation can have multiple layers.
- The user can step from frame to frame by pressing an accelerator
- key or can do image manipulations that are propagated automatically
- to a selected range of frames.
-
- Layeranimated images can be combined with frames (multiple images)
- as you can see in the "Move Path" plug-in
- or converted to frames and vice-versa.
-
-
- Concept:
- An animation consists of a series of images of the same size & type
- (frames).
- The concept of GIMP-GAP is to store each frame seperate on
- disk, using a filename convention that includes the frame number
- and extension.
-
- Example: film_000001.xcf,
- film_000002.xcf
- ..
- film_000012.xcf
-
- GIMP's xcf fileformat should be used to store the frames,
- so that each frame can have more layers.
-
- Sound is not supported in this concept, but will be handled
- as sperate audiofiles at encoding time or in the playback module.
- The playback framerate and other common information about the
- animation are stored in an extra videoinfo textfile
- film_vin.gap
-
- This requires a lot of diskspace but offers much more flexibility
- while working on the animation.
-
- To save diskspace you may optional use gziped xcf frames
- (takes extra time to un/compress) by using the extension .xcfgz
- (gzip has to be installed on your system to do that)
- If you can accept lossy compression you may also use
- the xjt fileformat to store your frames on jpeg based compression.
- (the curent implementation of the xjt fileformat
- is resticted to UNIX operating systems)
-
- The final product can be encoded as videofile
- or converted to one multilayerd image
- that can be saved as animated-gif
- (or, in the future in other animation formats
- when other load/save modules were added to the GIMP)
-
- GIMP-GAP provides automated fileformat conversions for
- the frames of an animation.
- This conversions offer a way to use external
- video encoder programs.
- All GIMP-supported imagefileformats may be used.
-
- On UNIX Platforms GIMP-GAP provides frontend dialog interfaces for
- software MPEG video encoder programs.
- (mpeg_encode and mpeg2encode)
-
- On UNIX platforms GIMP-GAP also provides an XANIM frontend to
- load frames from multimedia fileformats (avi, quicktime, ....)
- based on the XANIM multimedia player. please note that XANIM is
- old and unmaintained software.
-
-
- Onionskin Layers
- GIMP-GAP does support onionskin layers, this features are described
- in the file README_onion.txt
-
-
-
-
- --------------------------------------------------------------------
- Installation
- --------------------------------------------------------------------
-
- This version of GIMP-GAP is a seperated Package since GIMP-1.3.x
- and does not compile/run with GIMP-1.2.x or older GIMP versions.
-
- ./autogen.sh # includes the ./configure call
- make
- make install
-
-
- Notes:
-
- - GIMP 1.1.4 upto GIMP-1.2.x have included older versions of GIMP-GAP
- as standard plug-in (named gap) with no need of extra installation.
-
-
- - GIMP-GAP provides frontend dialogs for:
- - mpeg_encode (V1.5R2)
- - mpeg2encode (V1.2)
- - xanim 2.80.1 exporting edition (with the extensions from loki
- entertainment)
-
- The frontends and the external programs need UNIX environment to run.
-
- If you like to use that stuff, you should install
- mpeg_encode and mpeg_play
- mpeg2encode and mpeg2decode
- xanim 2.80.1 (loki)
- on your system.
-
- - The GIMP-GAP playback module provides audiosupport for audiofiles
- in RIFF WAV format. The audiosupport is based on wavplay (tested with
- version 1.4).
-
- If you want to have audiosupport you must install wavplay
- and configure and compile gimp-gap without the
- configure option --disable-audiosupport
-
- As far as i know, wavplay is available only for LINUX, but i may
- be wrong...
-
- The GIMP-GAP playback module further provides a button for converting
- other audiofile formats to RIFF WAV.
- If you want to use that feature the external following programs
- must be installed:
- - sox
- - lame
-
- - There is no need to install all those external programs to
- compile GIMP-GAP.
-
- --------------------------------------------------------------------
- Supported Videoformats
- --------------------------------------------------------------------
-
- Read(decode):
- Any multimedia fileformat, XANIM can read
- (AVI, Quicktime, and a lot more, see xanim docu for more information)
-
- Write (encode)
- MPEG1/2 based on the external encoders mpeg_encode and mpeg2encode
-
-
- The GIMP_VIDEO_ENCODER project is an additional Package for GIMP-GAP
- that implements Video Encoding. It is still under development.
- An unstable prototype of the GIMP_VIDEO_ENCODER is available for GIMP-1.2.x.
-
-
- --------------------------------------------------------------------
- How to use
- --------------------------------------------------------------------
-
-
- - Creating multiple frames (video frames)
- - ---------------------------------------
-
- - from an existing single image
- Save your image as XCF file. (<Image>/File/Save as)
- use a name that ends up in _000001.xcf (or _000001.xcfgz)
-
- Then duplicate your image (<Image>/Video/Duplicate)
- You'll be asked how much copies you need.
- (Note: all copies are stored on disk immediate
- without explicite save)
-
- - from an existing layeranimated multilayer image
- use
- <Image>/Video/Split Img to frames
-
- This will create frames, a series of images on disk,
- with a name that ends up in _000001.xcf).
- Optional you may use other extensions. (.xcfgz, .jpg ...)
-
- WARNING: The extension defines the fileformat
- of the frames. Most of the other formats
- (than GIMP's .xcf format) can not save
- multilayer frames, or frames with alpha channels.
-
- - from outside the GIMP
- You may rename and copy existing XCF images
- according to the frame naming conventions.
- <img>_000001.xcf
- <img>_000002.xcf
- ...
- Then load (only one of them) into the GIMP.
-
- - Navigation (Goto)
- - ------------------
- It is recommanded to define some accelerator keys for quick
- walk through the frames.
- Here are my settings (excerpt from my $HOME/.gimp/menurc )
-
- (menu-path "<Image>/Video/Goto/First Frame" "<control><alt>1")
- (menu-path "<Image>/Video/Goto/Prev Frame" "<alt>1")
- (menu-path "<Image>/Video/Goto/Next Frame" "<alt>2")
- (menu-path "<Image>/Video/Goto/Any Frame" "<alt>3")
- (menu-path "<Image>/Video/Goto/Last Frame" "<control><alt>2")
-
- Alternatives:
- - You may open the GIMP-GAP videoplayer
- (menu-path: <Image>/Video/Playback...)
- and use the player for visual positioning
- (use the FrameNr Button or the GO-Button array for that task)
-
- - You may open the GIMP-GAP video navigator dialog
- (menu-path: <Image>/Video/VCR Navigator)
-
-
- - GAP VCR Navigator:
- - ------------------
-
- Start from menu:
- <Image>/Video/VCR Navigator
-
- The VCR Navigator dialog shows a thumbnail view, frame_number and
- time (mm:ss:msec) of the frames in a scrollable listbox.
- framerate:
- You can set the global framerate for all frames here.
-
- (Note: changing the framerate in the VCR Naviagtor
- dialog window does not change the number of frames.
- Therefore the motion does speed up or slow down
- at playback. If you want to keep your motion
- speed constant at increased framerate use the
- "Frames Density" tool to create the requested additional
- frames)
-
-
- timezoom:
- with timezoom you tell the VCR Navigator dialog window
- to display every n-th frame only, to get an overview
- on larger videos.
-
- Framerate and timezoom values are stored in
- a gap vide info file named:
- <framebasename>_vin.gap
-
- Double click with left mousebutton on a frame in the listbox
- performs a goto operation, which loads the clicked
- frame as current frame.
-
- Single click with left mousebutton
- selecets one frame (deselecting all others)
- Ctrl click with left mousebutton
- selecets one frame (additional to the current selection)
- Shift click with left mousebutton
- selects a range of frames.
-
- Click with right mousebutton
- brings up a pop-up menu
-
- Pop-up menu
- copy,
- cut
- paste before
- paste after
- paste replace
- clear pastebuffer
- select all
- select none
-
- cut and copy
- is sensitive if any frame is selected,
- paste and clear pastebuffer
- is sensitive if video paste buffer contains
- at least one frame.
-
- This menu enables you to cut, copy and paste the selected
- frames even between different videos.
- Size and type of the handled frames are converted at pasting
- if needed.
- The palette of the current frame is used for the
- pasted frames when the destination type is INDEXED.
-
- There are 3 types of paste:
- before:
- Insert frames before the current frame.
- Use this mode if you want to insert frames
- before the first frame.
- after:
- Insert frames after the current frame.
- Use this mode if you want to insert frames
- after the last frame.
- replace:
- Replace frames beginning at the current frame
- with the frames from the video paste buffer,
- and does overwrite existing frames.
-
- If there are selected frames in the VCR Navigator
- dialog window, the current frame is set to
- the first selected frame and the paste opration
- is releted to the first selected frame
-
- The paste buffer is located in the filesystem
- and can be configured in the gimprc file:
-
- (video-paste-dir "/home/hof/gap_video_paste_dir")
- (video-paste-basename "gap_video_paste_")
-
- The duplicate button in the VCR Navigator dialog
- duplicates the selected frames immediate into
- the current video, without writing to the
- video paste buffer.
-
- The delete button in the VCR Navigator dialog
- deletes the selected frames without writing to the
- video paste buffer.
-
- IMPORTANT NOTE:
- There is no undo for GIMP-GAP operations,
- and the deleted frames can not be restored.
-
-
- - Playback
- - --------
- Start the playback plug-in from the menu:
-
- <Image>/Video/Playback...
-
- This player does playback of your video frames.
- Along with the video you can also do playback of an audiofile.
- The player is a tool that should help to give a motionpreview
- and allows visible positioning for the animation designer.
-
-
- There is NO support for playback of videoformats (like MPEG, AVI, ....)
-
- Some notes on the audiosupport:
- - The audio playback checks for the existence of the wavplay audioserver executable
- file in your gimprc file
- (wavplaypath "/usr/X11R6/bin/wavplay")
- then checks the environment variable
- WAVPLAYPATH=/usr/X11R6/bin/wavplay
- and finally searches an executable named wavplay in all directories
- defined by your PATH environment variable.
-
- - Audiosupport can be completely turned off at compiletime.
- If Audiosupport was enabled at compiletime, The playback dialog window
- contains a notebook widget tab named "Audio Options"
-
- - Audio is always turned off, while frames are played backwards.
- - The audioplayback samplerate tries to follow the videospeed.
- If videoframes are played at the original speed, audio is played
- at the normal samplerate.
- If video speed is too fast audio may not follow synchron.
- - If the "Excact Timing" checkbox is off (unchecked) video and audio
- will not play synchron !
-
-
-
- Video Options:
-
- - Play (>) button
- Start the playback,
- or switch to forward play if already playing reversed.
-
- - PlayReverse (<) button
- Start the reversed playback,
- or switch to reversed play if already playing forward.
-
- - Pause button (||)
- Stop playback,
- or go to fist frame of the selcted frame range if not playing.
- Go to the end of selected frame range if right mousebutton was used.
- or go to the active framenr if the midle mouse button was used.
- (the active framenumber is the one that is currently
- loaded in the GIMP image window from where you invoked the player)
-
- - The GO button array
- the 50 blank buttons above the preview build up the GO butto narray,
- This tool is for positioning and manual speedcontrol.
-
- Move the mousepointer over those buttons to display
- frames in sequence as fast as you move the mouse.
- Moving right is forward, left is backward.
-
- Tip:
- The positioning is done relative to the point where the
- mouse entered the GO button array.
- If you reached the leftmost GO button at framenr 50
- and want to go more backwards (to framenr 35),
- just move the Mouse outside the GO button array (up or down)
- and then enter again from the right side,
- and continue moving to the left, but now
- keeping the mouse inside the GO button array
- until the desired frame (Nr. 35) is reached.
-
-
- WARNING: This feature requires that the "Use Thumbnails"
- checkbutton is turned ON, and can do useful work
- only if your frames have thumbnail files.
-
- Even fast machines may have problems to deliver
- full sized multilayer frames in time.
- (depending on size of the frames, number of layers
- and IO performance of your hardware)
-
- - From and To spinbuttons:
- Here you can select a framerange by entering
- the begin and end framenumber.
-
-
- - FrameNr button
- With a mouseclick on the "FrameNr" button
- You can load the frame (the number that is currently on the players display)
- into the active image window where you can paint on it.
-
- Alternative you can also click on one of the GO buttons,
- or on the players display to reload the active image with
- the desired frame.
-
- - FrameNr spinbutton
- This widget displays the current framenr of the player.
- you can enter any availale framenumber.
-
- The timepos: mm:ss:sec displays the current position
- in Minutes:Secons:Microseconds
-
- (The time calculation is always based on the original speed.
- This is the framerate of your animation as found in the _vin.gap file.
- You can change the framerate in the VCR Navigator window)
-
- - Speed button
- Reset Speed to the original (the framerate of your Animation)
- (a 2.nd click goes back to the previous enters Speed)
-
- - Speed spinbutton
- Here you can enter the desired playback speed.
- The available range is 1 upto 250 frames/sec.
-
- Please note that 250 frames/sec may not be reached on
- most machines.
- If the exact_timing checkbutton is ON,
- the 250.th frame will be reached in time (after 1 second),
- but if your machine can handle only 25 frames in one second
- you will see just frame 10, 20, 30, 40, .... , 230, 240, 250
-
- - Size button
- Set the standard thumbail size
- There are two standard sizes
- "normal" 128 Pixels
- "large" 256 Pixels
- this button toggles between both sizes.
- If you hold the SHIFT key wihle clicking the size button,
- the preview is scaled to 1:1 original framesize.
-
-
- - Loop checkbutton:
- Plays in loop if ON, otherwise play once and then stop.
-
- - Selection only
- Play only frames within the selected range.
- if not checked (OFF) play all frames.
-
- - PingPong
- Play alternating backward/forward
-
- - Exact Timing
- if this checkbutton is ON (the checked state)
- the player tries to keep the frametiming
- as exact as possible. if your machine
- is not fast enough one or more frames
- of the sequence are not displayed (dropped)
- and the next frame is diplayed in time.
-
- if this checkbutton is OFF
- all frames are displayed.
- this leads to more and more growing delay
- depending on the the power of your machine.
-
-
- - Use Thumbnails
- use thumbnail files if available.
- Both the PNG based open thumbnails standard
- and the older .xvpics based thumbnail files
- are supported.
-
- Thumbnail based playback has reduced quality.
- If there are just .xvpics thumbnail files
- the quality is very miserable.
-
- The full original frame images are read in case when
- no thumbnail file is available,
- (Note:
- It also does create the thumbnail file in such a case,
- but this is only done, if the preferences setting
- permits normal (or large) thumbnail files)
- )
-
-
- If the "Use Thumbnails" checkbutton is switched OFF
- the player always reads the full original sized frame images
-
- Playback with full frame image read mode
- is very slow, even on fast machines,
- but gives the original quality.
-
- Audio Options:
- NOTE: The audio options are not existent
- when compiled with --disable-audiosupport.
-
- - Audiofile:
- Here you can specify the audiofile. (you may also use the "FileBrowser" button)
-
- - Volume:
- *** Volume control is not implemented yet ***
- The "Enable" checkbox can turn ON/OFF audio playback.
-
- - Offset
- Here you can shift the audiostart against the video startframe.
- An offset value 0 will start auduio at the first frame.
- Negative offsets will start audio with a delay of n frames.
- Positive offsets will skip the beginning of the audiofile.
- The skipped duration is equal to the time it takes to play n frames
- at original framerate.
-
- The "Offset" label shows the audio shift in unit Minutes:Secs:Millisecs.
- The "Audiotime" label shows the total playing time of the audiofile
- (without taking care of the offset shifts)
-
- The "Audioframes" label shows the total playing time of the audiofile
- in unit frames where frames are played at the original
- framerate of the video frames.
-
- The ohter labels show informations about the audiofile.
- - Nuber of Samples
- - Samplerate (in Samples / Sec)
- - Channles (usual 2 for stereo)
- - Bits/Sample
-
- If no valid audiofile was specified, all values are filled with 0.
-
- - Copy As Wavfile
- This button provides conversion of audiofile formats to RIFF WAV.
- It opens a subdialog where the name of the wavfile can be entered
- and where you can optional specify a new samplerate if you want
- to resample down to lower samplerates.
-
- IMPORTANT NOTE:
- - You need the external programs sox and lame to run that feature,
- because the provided converter script audioconvert_to_wav.sh
- is based on that programs.
- - If you have another external audio converter program, you can configure
- GIMP-GAP to use that program rather than the standard converter script
- audioconvert_to_wav.sh
-
- The preferred way is to edit your gimprc file and add a line
- like this on:
- (audioconvert_program "/usr/local/bin/my_private_audioconverter")
-
- The 2nd way is to set an Environmentvariable:
- export AUDIOCONVERT_TO_WAV=/usr/local/bin/my_private_audioconverter
-
-
- Playback Alternatives:
-
- You can convert your frames to one multilayer image
- menu: <image>/Video/Frames to Image)
- And then playback the newly created Image
- menu: <image>/Filters/Animation/Playback
-
- The GIMP-GAP VCR Navigator dialog playback button
- makes those steps automatic when the SHIFT Key
- is pressed together with the mouseclick,
- The playback multilayer image contains only the selected frames,
- or all frames if no selection was made.
-
-
-
- - Move Path (make things move)
- - ----------------------------
-
- Start from Menu:
- (<Image>/Video/Move Path)
-
-
- For this plug-in you need a series of frames (destination video frames)
- and one single image or another series of frames. (source object or moving object)
- If you use a single image as source object all the layers in it
- can be used as source frames.
-
- The source frames are copied into the destination frames.
- This copy can be transformed in many ways, using controlpoints
- and appears as one new layer in each handled destination frame.
- The X/Y controlpoint coordinates affects the offest of the copied new layer
- in the destination frame(s). All controlpoints build up a path
- that defines how the copied new layer moves within the destination frames.
-
-
- - The source image must be opened in the GIMP
- - The source image must be another Image than the destination frame
- (if you really want to copy layers from destination frame
- to destination frame(s) you have to duplicate it first)
- - The source image must be from the same type (RGB, INDEXED ..) as
- the destination frame.
-
- In other words: To run the 'Move Path' plug-in you have to open at
- least 2 images of the same type.
-
-
-
- The selected layer(s) of the source image or frame
- is (are) copied into the selected range of frames.
- Each handled frame recieves exactly one copy of the selected layer
- from the source image, where the copy will be modified by
- transformations such as scaling, changing transparency and more,
- according to the controlpoint settings.
-
- If you use stepmodes "Loop", "Loop Reverse", "Once", "OnceReverse" or "PingPong"
- the layers of the source image are stepped through,
- and the next handled frame recieves the next
- layer from the source image's layerstack.
-
- For the frame based stepmodes ("Frame Loop", "Frame PingPong" ...)
- the selected source(layer) should be a layer of another video frame.
- In the frame based stepmodes the source object is considered
- as video frames and stepping is done from frame to frame
- (and not from layer to layer)
- The inserted layer is always a copy of one frame of the
- source object animation (no matter which source layer was selected)
- where all the visible source layers are merged to build up the moving object.
-
- The frame based modes can be used to mix videos with many frames,
- because there is no need to convert one of the videos to
- a multilayer image.
-
- If you use a normal image (that is not a video frame) as source
- for the frame based stepmodes it acts like an animation with
- only one frame.
-
- The "Step Speed" factor
- decides how fast to step through the source object,
- in relation to the target frames.
- With factor 1.0 source and target will step synchron.
- Factor 0.5 slows down the source steps to half speed.
- The same source layer is copied into 2 frames,
- before the advance to the next source layer is done.
-
- The "Step Speed" factor is not relevant for the
- stepmodes "None" and "FrameNone".
-
- Selection Handling
- The "Move Path" plug-in can ignore or respect selections (selected Areas)
- in the source image (or source frame(s))
- The Optionmenu Modes are:.
- - "Ignore Selection (in all Source Images)"
- Ignores all selections.
- - "Use Selection (from Initial Source Image)"
- Takes the selection from the initial source image (or frame)
- and applies it to all handled copies.
- This makes all unselected pixels of the moving object
- transparent. You can get smooth edges
- depending on the feather_radius settings in the controlpoints.
- - "Use Selections (from all Source Images)"
- Uses all selections in all source frames.
- The source frames without selections are handled
- as if all pixels were selected.
- This mode is only relevant for the frame based stepmodes,
- "Frame Loop", "Frame Once", "Frame Loop Reverse",
- "Frame OnceReverse", "Frame PingPong"
-
-
-
- The copies of the source layer(s) were modified by transitions
- with varying parameters.
- Parameters:
- - SourceLayer (depends on Stepmode)
- - Position (X/Y)
- - Size Scaling (Width/Height)
- - Opacity
- - Rotation (angle from -360 to +360 degrees)
- - Selection Feather Radius (in Pixels)
- the feather radius controls how much to smooth the edges of the selections
- (this is only relevant for source selection handling modes other than
- "Ignore Selection")
- - Perspective Transformation (transformation factors for X/Y of the 4 Corner Points)
-
- Perspective transformation factors are scaling factors
- that are applied to the coordinates of the 4 corners.
- If all 8 Coordinates have the value 1.0 no scaling is done
- and the result is the same as the original.
- Scaling with factor 0 moves the affected (x or y) coordinate to the middle.
- Factor 2.0 applied to Coorinate moves it outwards by half of the
- original width (for X coordinates)
- or hlaf height (for Y coordinates).
-
- 1/1 1/1
- +------------+------------+
- | | |
- | x1/y1 | x2/y2 |
- | 0.5/0.5 | 0.5/0.5 |
- | o...............o |
- | . | . |
- | . | . |
- | . |0.0 . |
- +------------+------------+
- .| | |.
- . | | | .
- . | | | .
- . | | | .
- . | | | .
- . | | | .
- . | | | .
- . +------------+------------+ .
- . 1/1 1/1 .
- . .
- o...............................................o
- 1.5/1.5 1.5/1.5
- x3/y3 x4/y4
-
-
-
- The controlpoint parameters were changed linear from one starting
- controlpoint to the next controlpoint.
- Per default the move path has only only 1 controlpoint.
- (So the source layers(s) are copied to all frames of the framerange
- at constant position, size and opacity)
- If you want your source layers to move, grow, rotate or to fade (in or out)
- you have to add one more controlpoints (limited to 1024) to define a path.
-
- The affected range is selected by start frame - end frame.
- Each affected frame recieves exactly one copy of the (current)
- source layer adjusted to the current controlpoint prameters.
- The layerstack defines if the pasted copy appears
- in the foreground (0 == on top) or below other layers that are
- already in the frame.
- With the toggle button 'Clip To Frame' the the copied layer
- is clipped to the destination frames image width and height.
-
- With the frame number in the preview frame you can select the
- frame number to display in the preview.
- You have to press the "UpdPreview" button for explicite
- update of the preview.
-
- Controlpoints:
- The move path is defined by contolpoints.
- Only the current cotrolpoint is displyed with all
- its values.
-
- If checkbutton "Show Path" is on, all the controlpoints
- are shown in the preview window, connected with pathlines.
- Furter it enables picking controlpoints
- and draging controlpoint koordinates (X/Y)
- in the preview with the left mousebutton.
- With the right mousebutton you always drag
- the coordinates of the current controlpoint
- (without picking other controlpoints)
-
-
- There are controlpoint edit buttons to
- "Add Point"
- "Insert Point" "Delete Point"
-
- With the Buttons
- "Prev Point" "Next Point"
- "First Point" "Last Point"
- you can step from controlpoint to controlpoint,
- and make other controlpoint to the curremt controlpoint.
-
- "Reset Point" "Reset All Points"
- does reset width, height and opacity of the controlpoint to 100%
- , perspective factors to 1.0 (no perspective tansformation)
- and rotation to 0 degree,
- but leaves the path (X/Y values) unchanged.
-
- "Delete All Points"
- removes all controlpoints.
-
- "Rotate Follow"
- Calculate rotate values for all controlpoints
- to follow the path.
- An object moving along a horizontal line
- from left to right results in an angle of 0 degree.
- (or a multiple of 360 degress if the path
- builds circular loops)
- A vertical Move from top to bottom gives 90 degrees.
-
- SHIFT: If this button is clicked while the
- Shift Key is pressed, a fix rotation offset
- is added to all the calculated rotation values.
- The rotation offset is taken from the current
- rotate value of controlpint 1.
-
- If an object moves from right to left
- the calculated angle is 180 degree and the object
- appears upside down.
- With a startoffset of 180 (or -180)
- you can compensate this effect.
-
- "Save Points"
- saves your controlpoints to file
-
- "Load Points"
- loads controlpoints from file
-
-
- The "Instant Apply" checkbox
- does automatic update of the preview when checked.
- The automatic update needs much CPU and IO power
- especially when big images are used as source and/or destination
- or those images have many layers.
- (dont use the instant_apply on slow machines.)
-
- Tips:
- - with the UpdPreview Button (or "Instant Apply" checkbox)
- you can blend in the
- selected layer of the source image.
- If you want to adjust position it may be useful to see
- the background.
- Therfore you can make the source image
- transparent (modify the opacity value) or
- put the sourcelayer below the background
- (set the layerstack to higher value)
- Then pres UpdPreview button again.
-
- - Whats wrong if the "UpdPreview" was pressed,
- but the preview does not show the source object ?
- - maybe the source object is an invisible layer.
- (if the "Force Visibility" checkbox is turned ON
- invisible Layers should become visible).
- - maybe the current opacity setting is 0% (or nearly 0%)
- - maybe the current X and/or Y position are outside
- the image
- - maybe the current scaling factors are 0% (or nearly 0%)
- and the result is only 1x1 pixel or smaller
- - maybe the source object has only fully transparent pixels
-
-
- - If you let your objects (source layers) rotatate,
- perform perspective transformations or
- change their size, set handle mode to 'Center'.
-
- If you use another handle mode you may get unwanted
- moves of your object, caused by resizing.
-
-
- - Speed:
- If no keyframes are set,
- the "Move Path" plug-in alternates the settings linear from
- controlpoint to controlpoint, so things move (or happen) in constant speed
- between 2 controlpoints.
-
- If you want to make accelerated moving obcets, you'll
- have to set more controlpoints with growing distances.
-
- Example:
-
- [1] [2] [3] [4] [5] [6]
- +---+----+-----+------+-------+
-
- The affected range has 25 frames, and you have set 6 points
- with growing distances in one straight line and without
- specifiying keyframes for those points.
- That gives 5 frames (== equal time) for each part of the path,
- but each part has another length. This results in different
- (growing) speeds for each part of the path.
-
-
-
- - Keyframes
-
- Keyframes can be used optional, to fix a controlpoint
- to the given frame number. The first and last controlpoints
- are implicite keyframes, always fixed to start or end
- frame number. (The keyframe entry is set insensitive
- on the first and last contolpoint)
- With the help of keyframes you can control exactly
- when things should happen.
-
- Use a value of 0 in the keyframe entry if you dont want
- to fix a controlpoint to a keyframe.
-
- Keyframes are shown as absolute frame number
- in the "Move Path" dialog window, but they
- are saved as relative values in the
- pointfile.
- (if start frame = 5
- and a keyframe is displayed as 7
- the keyframe is internally stored as 2 (7 - 5)
-
- - Check Controlpoints
- - The check is done at "OK", and "Anim Preview"
- button,
- If errors are detected, they are shown
- in a pop-up window and the action is not performed.
- - The number of cntrolpoints is now checked
- against the number of affected frames.
- (You can't have more controlpoints than frames)
- - If keyframes are used, they must be in
- (ascending or descending) sequence
-
-
- - AnimPreview
- With this button you can generate an animated preview
- to get an idea how the inserted moving object
- will look like. The animated preview is generated
- as multilayer image and the Filter/Animation/Playback
- plug-in is started on that multilayer image.
-
- The button opens a dialog window, where you can
- enter options for the animated preview.
-
- - Object on empty frames
- renders quick on empty frames (filled with background color)
- (scale down speeds up rendering time)
- - Object on one frame
- renders quick on one frame (preview frame)
- (scale down speeds up rendering time)
- - Exact Object on frames
- renders slow, but exactly on the selected framerange.
- (scale down increases rendering time)
-
- - Scale Preview
- Optional you can scale down the animated preview
- size (100% downto 5%)
-
- - Framerate
- The framerate is used in the generated
- multilayer image only.
-
- - Copy to Video Buffer
- Optional you can copy the preview frames
- to the video buffer
- (can be pasted in the GIMP-GAP VCR Navigator)
-
- - Force visibility
- If this checkbutton is set, all source layerobjects
- are set visible when they are copied into frames.
-
-
- "Move Path" advanced settings
- --------------------------
-
- - Bluebox
- With the bluebox check_button you can apply the bluebox filter effect
- on the moving object, that makes the keycolor transparent.
-
- - The Keycolor button
- Opens a dialog window where you can set all the parameters
- of the bluebox filter.
- If clicked with the right mouse button you can grab the keycolor
- from thhe current FG/BG color (in the GIMP main window)
-
-
- - Tracelayer
- a trace layer shows all positions of the moving object
- from begin until the position of the previous frame.
- Positions in virtual frames (tweens) are also included
- in the trace layer.
- If descending Opacity is used, the trace is fading out
- at the older (previous) Positions of the moving object.
-
- -Tweensteps
- This feature is for rendering fast moving Objects.
-
- The "MovePath" plug-in can calculate the moving object for virtual frames (tweens)
- beetween real frames. You can control this by setting tween_steps
- to a value greater than 0.
- In that case the "MovePath" plug-in creates an additional layer
- (the "Tweenlayer") and inserts that tween layer below the
- stackpostion of the current moving object in the next real frame.
- The tween layer shows the moving object at the positions of
- all virtual frames beetween two real frames.
-
- Example: The selected frame range is 10 frames and
- the tweensteps value is 2. In this case 28 steps
- are processed internal. 10 real frames + 18 virtual frames
- (2 virtual beetween each real frame)
- Use descending opacity to fade out tweens.
- The tween nearest to the real frame is drawn with the initial
- opacity value, the other tweens are reduced more and more
- if descending opacity is less than 100%.
- With tweens and opacity settings you can produce motion-blur effects
- for fast moving objects.
-
- If both tween processing and trace layer are active, the
- "Tweenlayer" is added, but set invisible.
- This is done because the trace layer contains already all the tween steps.
- A visible tween layer would produce unwanted increase
- of the total opacity of the moving object in the composite view.
-
-
- - Convert frames to one multilayered image.
- - -----------------------------------------
-
- This can be done with
-
- menu: <image>/Video/Frames to Image
-
- The selected source range of frames is copied into one
- new created multilayered destination Image.
- Each frame results in one layer in the destination image.
- (or nothing if the source frame has no selected layer)
-
- With the layer basename you can choose a name for the resulting
- layers in the destination Image. The string [####] is replaced
- by the frame number.
- Example: my_layer_[##] results in: my_layer_01, my_layer_02 ....
-
- Layer Mergemode:
- - Extend as necessary Build a destination layer by merging
- selected layers of one source frame.
- The destination layer's size will be
- the outline-rectangle of all selected
- layers.
-
- - Clipped to image Build a destination layer by merging
- selected layers of one source frame.
- The destination layer's size will be
- the image size.
-
- - Clipped to bottom layer Build a destination layer by merging
- selected layers of one sourceframe.
- The destination layer's size will be
- the size of the lowest selected layer.
-
- - Flattened image Build destination layer by flattening
- the source layers copied from one source frame.
- There will be no transparent parts
- in the destination layers.
- The destination layer's size will be
- the image size.
-
- With the 'Exclude BG-Layer' checkbutton pressed,
- the background layers of all the source frames are excluded
- from the copy, regardless if they are selected or not.
- Otherwise background layers are handled like all other layers.
-
- (If you are using flatten mode 'Flatten' the background color will fill all
- transparent parts of the resulting destination layer(s).)
-
- Layer Selection:
- ----------------
- Here you can select which layer(s) of a frame is(are) used
- to build the destination layer.
-
- Select Layer(s):
- Pattern is equal to layer name
- Pattern is start of layer name
- Pattern is end of layer name
- Pattern is a part of layer name
- With these settings you can select layers
- by their layername.
- (All layers with a layer name matching the select pattern
- are selected).
-
- Pattern is layerstack number list
- Layers are selected by their layerstack position,
- where 0 is the top layer.
- The pattern is a list of layerstack numbers or
- number ranges. (0-3 matches to the upper 4 layers)
- Pattern is reverse-stack list"
- Here you can specify layerstack numbers in reverse order.
- (where 0 is the background layer)
-
- All Visible (ignore pattern)
- All visible layers are selected.
- (The select pattern is ignored)
-
- Select Pattern:
- String to identify a layer. It can be a part of the layer name
- or a list of layerstack numbers (like this one: "0, 2-5, 9")
- depending on your choice in select layer(s) above.
- Case Sensitive:
- Lowercase and upppercase letters are considered as equal
- if this checkbutton is set to off.
- Invert Selection:
- Select all unselected layers.
- Pixel Selection:
- How to handle selected areas in the handled frame range.
- "Ignore"
- Ignore all selections in all handled frames
- "Initial Frame"
- Use only one selection from the first handled frame,
- All unselected areas are set to transparent in the
- resulting multilayer image.
- All the resulting layers in the generated multilayer image
- are shaped by the initial selection.
- "Frame specific"
- Use selections from all handled frames.
- (Frames without any selection are handled as if all pixels were selected)
- All unselected areas are set to transparent in the
- resulting multilayer image.
-
- - Frames Convert
- - --------------
- Converting multiple frames from one fileformat to another:
-
- menu: <Image>/Video/Frames Convert
-
- Basename:
- Name of one destination frame without the frame number part and without the
- extension.
-
- Extension:
- Extension of the destination frames. The extension also defines the
- fileformat.
-
- Imagetype:
- Keep Type
- Convert to RGB
- Convert to Gray
- Convert to Indexed
-
- Flatten:
- Merge all layers if checked. This check_button should be turned on
- for destination fileformats that can not store multiple layers.
-
- Example1:
-
- If your source frames are XCF-images of imagetype RGB with the names:
- img_000001.xcf
- img_000002.xcf
- img_000003.xcf
-
- and you want to convert to JPEG's named
- /tmp/scratch_000001.jpg
- /tmp/scratch_000002.jpg
- /tmp/scratch_000003.jpg
-
- you need the following convert settings:
- From Frame: 1
- To Frame: 3
- Basename: /tmp/scratch_
- Extension: .jpg
- Imagetype: Keep Type
- Flatten: ON (checked)
-
-
- Example2:
-
- To convert from RGB JPEG fileformat (.jpg) to GIF (.gif)
- you have to set the destination imagetype "Convert to Indexed",
- because the GIF fileformat can not handle RGB, only GRAY and INDEXED)
-
- Convert to INDEXED reduces the number of colors
- downto 256 (or less).
-
-
- - Modify Frames
- - --------------
- Start from Menu:
- <Image>/Video/Frames Modify
-
- The GIMP-GAP plug-in 'Frames Modify' provides the feature to perform functions
- on one ore more selected layer(s) in all frames of the selected frame range.
-
- The layers can be selected by (parts of) their name, or by their
- layerstack numbers.
- (for more information on layer selection see above
- at chapter "Convert frames to one multilayered image").
-
- Available Functions are:
- "Set Layer(s) visible",
- "Set Layer(s) invisible",
- "Set Layer(s) linked",
- "Set Layer(s) unlinked),
- "Raise Layer(s)",
- "Lower Layer(s)",
- "Merge Layer(s) expand as necessary",
- "Merge Layer(s) clipped to image",
- "Merge Layer(s) clipped to bg-layer",
- "Apply filter on Layer(s)",
- "Duplicate Layer(s)",
- "Delete Layer(s)",
- "Rename Layer(s)",
- "Replace Selection",
- "Add Selection",
- "Subtract Selection",
- "Intersect Selection",
- "Selection None",
- "Selection All",
- "Selection Invert",
- "Save Selection to Channel",
- "Load Selection from Channel",
- "Delete Channel (by Name)"
- "Add alpha channel",
- "Add white layermask (opaque)",
- "Add black layermask (transparent)",
- "Add layermask from alpha",
- "Add layermask transfer from alpha",
- "Add layermask from selection",
- "Add layermask from bw copy",
- "Delete layermask",
- "Apply layermask"
-
-
- The Functions
- "Replace Selection",
- "Add Selection",
- "Subtract Selection",
- "Intersect Selection",
- take the Selection from the initial (invoking) frame and combines it
- with existing selections in all the other handled frames.
-
- The Functions:
- "Duplicate Layer(s)"
- "Rename Layer(s)"
- "Save Selection to Channel"
- "Load Selection from Channel"
- "Delete Channel (by Name)"
- require a Name in the Entry field "New Layer or Channel Name:"
-
-
- The function 'Apply filter on Layer(s)' brigs up a dialog window that is
- similar to the PDB-Browser, where you can select any available
- filter.
-
- If you use the PDB-Browser's button "Apply Varying", the
- filterparameters will slightly change in each handled frame
- from start to end.
-
- - If there is more than one selected layer in a frame
- each of the selected layers within the same frame
- will be processed with the same filter parameter values.
-
- (for more information see chapter 'Animated calls of Plug-In Filters' below)
-
-
-
- It is a good idea to use the same layerstack structure in all
- your frames. Another hint is that you assign useful names to
- your layers. that should be done consequent for all frames.
-
- Example 1 (useful Layertack structure/names)
-
-
- film_000001.xcf film_000002.xcf .... film_000010.xcf
- ---------------------------------------------------------------------
-
- layerstack [0] mouse_01 mouse_02 mouse_10
- layerstack [1] cat_01 cat_02 cat_10
- layerstack [2] tree_01 tree_02 tree_10
- layerstack [3] background background background
-
-
-
- Example 2 (not recommanded)
-
-
- film_000001.xcf film_000002.xcf .... film_000010.xcf
- ---------------------------------------------------------------------
-
- layerstack [0] tree layer mouse_10
- layerstack [1] bg layer cat_10
- layerstack [2] layer background
- layerstack [3] background
-
-
- - Renumber Frames
- - ---------------------------------
-
- Start from Menu:
- <Image>/Video/Frames Renumber
-
- This plug-in renumbers all frames (discfiles) of a video.
-
- First Frame Number:
- Enter the new number for the first frame in this
- entry field.
- All frames of video are renumbered, starting at this
- number.
-
- Digits:
- Here you can enter how many digits (1 up to 6) to use for your frame
- numbers. Framenumbers are fileld up with leading zeros to the
- specified number of digits.
- Framenumbers that are greater than the specified number of digits
- will use more digits than specified, but are built without leading zeroes.
- If you choose 1 your framenumbers are built without
- any leading zeroes at all.
-
-
- If the frames are numbered in a non-continous way, you can
- make them continous with this plug-ins.
- (Most other GIMP-GAP features do not accept non-continous numbered frames)
-
- Example:
- you have the frames:
- film_0001.xcf
- film_0007.xcf
- film_0008.xcf
-
- After running the renumber feature with settings
- First Frame Number: 4
- Digits: 6
-
- the frames will be renumbered as:
-
- film_000004.xcf # old name was film_0001.xcf
- film_000005.xcf # old name was film_0007.xcf
- film_000006.xcf # old name was film_0008.xcf
-
-
- - Render Filename to Layer
- - ---------------------------------
-
- Start from Menu:
- <Image>/Video/
-
- This plug-in renders the filename of the image
- or just the number part of the filename onto the image.
- If the parameter create_new_layer is 0, the filename is rendered
- to the active drawable (the layer that was active when
- this plug-in was invoked).
- Otherwise a new textlayer is created.
-
- Mode:
- "Number Only" ... render just the number part
- "Filename" ... render the filename without directory path
- "Path/Filename" ... render the filename including the directory path
-
- Fontname:
- Entry for the Fontname
-
- Fontsize:
- Fontsize in pixels
-
- PosX:
- Position x offset in pixels
-
- PosY:
- Position y offset in pixels
-
- Antialias:
- ON: Use Antialiasing
- OFF: No Antialiasing
-
- Create Layer:
- ON: Create a new layer,
- OFF: Render on the active drawable
-
-
- Tip:
- To create framenumbers in all of your frames
- you can use the "Modify Frames" (<Image>/Video/Frames Modify) feature
- and choose "Apply filter on Layer(s)" as function.
- In the next dialog step, the GIMP-GAP DB-Browser window
- select "plug_in_gap_renumber" as filter name.
- (this is the internal PDB-Name of the "Render Filename to Layer" plug-in)
-
- Then choose "Apply constant" in the DB-Browser window.
- This should open the "Render Filename to Layer" dialog window
- (only for the first frame) where you can adjust the settings.
- Choose "Number Only" mode for rendering only the framenumber part,
- and "Create Layer" checkbutton turned on if you want the number to be created
- as seperate layer.
- With "Create Layer" turned off the number will be rendered on (all)
- the layer(s) that were selected in the initial "Modify Frames" dialog window.
-
-
- - Change Frame Density
- - ---------------------------------
-
- Start from Menu:
- <Image>/Video/Frames Density
-
- Changing the frame density results in duplicating frames
- for increasing frame density, and will delete frames
- for decreasing the density.
-
- This feature is used to change the target framerate.
-
- Example:
- If you have created an animation with framerate of 8 frames/sec
- and want to change to a target framerate of 24 frames/sec.
- You should call the "Frame Density" plug-in with a density factor
- of 3 and increasing density mode.
-
- This makes 2 copies for each of the frames in the selected range.
- If you use playback at the old 8 frames/sec rate the motion
- is 3 times slower now. With the new Rate of 24 Frames/sec
- the motion is the same speed as before.
-
- The animation before the frame density change (frames 1-9):
-
- 01 02 03 04 05 06 07 08 09 (original framenumber)
-
- The animation after frame density change at growing mode and factor 3
- and limited to a frame range from frame 3 to frame 8:
-
- 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 (new framenumber)
- 01 02 03 03 03 04 04 04 05 05 05 06 06 06 07 07 07 08 08 08 09 (original framenumner)
- + + + + + + + + + + + +
-
- Tip:
- To get smooth motion in the resulting frames you may create
- 2 onionskin layers per frame (for the range "FromFrame" 03 "ToFrame" 20)
- using a setting that blends in the next 2 frames ("FrameReference" +1)
- at stackposition 0 FromTop of the layerstack
- with opacity of 66% and 50% and without ignoring any background layer(s).
-
- That way you get a cross-fading effect with smoother motion
- when played with 24 Frames/sec
-
- You can find onionskin in this menu:
- <Image>/Video/Onionskin/Configuration
-
-
- Density factors are limited to values from 1.0 upto 100.0.
- float values are supported.
-
-
- If you want to change from 30 frames/sec down to 15 frames/sec
- then use a density factor of 2 and decreasing density mode
- (increasing/growing mode switched off).
-
- This will delete every 2.nd frame.
-
- There is no undo, so use this feature very carefully.
-
-
- - Blubox Filter
- - --------------
- Start from Menu:
- <Image>/Video/Bluebox
-
- The bluebox filter makes the selected keycolor transparent.
- The bluebox filter operates on a single layer that must be of RGB(A) type.
- (INDEXED and GRAY images are not supported)
-
- Keycolor:
- This colorbutton shows the wanted keycolor. Pixels that are similar
- to this color can be set more or less transparent by the bluebox filter.
- You can define the detection of similar colors by Threshold(s) in
- 4 different ways depending on threshold mode:
-
- Threshold Mode:
- HSV ..... has 3 seperate thresholds for hue, saturation and value
- and operates in the HSV colormodel.
- RGB ..... has 3 seperate thresholds for red, green and blue channels
- and operates in the RGB colormodel
- VALUE ... has only one single threshold for the maximum difference
- of red, green, and blue channels and operates in the RGB colormodel.
- ALL ..... has 6 seperate thresholds for HSV and RGB
-
- Thresholds
- All thresholds have the range from 0.0 to 1.0
- where 0.0 has no tolerance the compared channel (requires exact match)
- and 1.0 allows the maximum tolerance (all values will match)
-
-
- Alpha Tolerance:
- Alpha tolerance value 0.0 upto 1.0
- where 0.0 makes hard pixel selection by color threshold(s)
- greater values allow more or less variable transparency (alpha channel values)
- for the selected pixels within the threshold(s)
- depending on their difference to the keycolor.
- Pixels with color equal or near the keycolor appear more transparent
- than pixels with more color differnce.
- Pixels with color differences bigger than the threshold(s)
- are not affected by the "Alpha Tolerance" setting.
-
-
- Source Alpha:
- Select only pixels with alpha channel >= source_alpha
- where 0.0 is full transparent, 1.0 is full opaque.
- Normally this is set to 0.2 to protect the alpha_channel
- of pixels that are already transparent against changes
- by the bluebox filter.
-
- Target Alpha:
- Control the minimum alpha value for the selected pixels.
- where 0.0 sets a full selected pixel (== matching with keycolor)
- to full transparent,
- 0.5 sets a full selected pixel to half transparent
- and 1.0 to full opaque.
-
- Feather Edges:
- Enable smoothing the selection using the feather radius.
-
- Feather Radius:
- Feather radius in pixels, makes the selection smooth.
- (this is done internally by applying a blur filter on the
- selection that was built by keycolor, threshold(s) alpha tolerance,
- shrink/grow and target alpha settings)
-
- Shrink/Grow:
- Grow or shrink the selection in pixels,
- where negative values are for shrinking the selection
- (that was built by keycolor, threshold(s) alpha tolerance,
- and target alpha settings)
-
-
- The bluebox filter creates an image for preview of the effect.
- This image contains an (optinal scaled) copy of the original layer.
-
- Automatic Preview:
- When checked perform automatical update of the preview image
- on all changes of the parameter settings.
-
- Preview Button:
- Create or update the preview image.
-
- Previewsize:
- Set size of the preview image in percent of the original.
-
-
-
- - Saving frames to Videofiles:
- - ----------------------------
-
- The GIMP-GAP base package provides only frontend dialogs to call MPEG
- encoding programs.
- You must have installed one of them if you want to save
- your finished video frames in MPEG video fileformat.
-
- UNIX Users can install the optional GIMP-GAP video encoder package,
- to save (==encode) frames in MPEG and other videoformats on the fly.
-
- ==> the GIMP-GAP video encoder Package is available for GIMP-1.2.x
- porting to GIMP-1.3 will start in december 2003
-
- The MPEG-encoders are:
-
- 1) mpeg_encode 1.5
- freely distributed Berkeley MPEG-1 Video encoder
- ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg/bmt1r1.tar.gz
-
- (Can read video frames in the fileformats:
- .yuv
- .ppm
- .pnm
- .jpg
- )
- (can call filterprograms to convert from other fileformats)
-
- 2) mpeg2encode 1.2
- MPEG-2 and MPEG-1 encoder / decoder, version 1.2
- (MPEG Software Simulation Group)
-
- Web: http://www.mpeg.org/MSSG
- FTP: ftp://ftp.mpeg.org/pub/mpeg/mssg
- E-mail: mssg@mpeg.org (author contact)
-
- (Can read video frames in the Fileformats:
- .yuv
- .ppm
- )
-
- To prepare for MPEG encoding:
-
- - Use 'Frames Convert' from the video menu
- to convert your video frames to .ppm
- (or another fileformat that can be read directly by
- your encoder)
-
- - If you have a layerstack-animated multilayer image
- you can use 'Split Img to Frames' from the video menu.
-
- - If you are using mpeg_encode and
- height or width are not multiples of 16:
- Use 'Frames Scale' or 'Frames Crop' from the video menu
- on the newly converted/created video frames.
-
- - Then use 'Encode/MPEG2 (mpeg2encode)' or 'Encode/MPEG1 (mpeg_encode)'
- from the video menu.
- (Invoked from one of the prepared video frames)
-
- Both encoders offer a lot of parameter settings for the experienced
- User. The parameters are passed to the encoder in a parameterfile.
- The frontend dialog shows only the most important parameters,
- but generates a documented parameterfile with default values
- for the other parameters.
- You can generate the parameterfile with or without starting
- the encoder.
- (You may start the encoder later by executing the startscript
- from a Unixshell. The startscript is generated by the frontend dialog)
-
- For more information on the parameters please refer to the encoders
- documentations.
-
-
- - NO UNDO:
- - --------
- There is no Undo for the video frame based GIMP-GAP video plug-ins.
- If you step to the next frame (menu: <image>/Video/Goto Next)
- the current frame is saved to disk and the next frame
- is loaded into the image.
- All undo steps were cleared at this time.
-
-
- - About Locks
- - -----------
-
- All the GIMP-GAP plug-ins are using a lock.
- This lock disables to run other GIMP-GAP plug-ins (or the same plug-in twice)
- on the same image at the same time,
- while the current GIMP-GAP plug-in is working on that frame.
-
- GIMP-GAP keeps a locktable (for the current session) that contains
- the image_id's of all images currently locked by GIMP-GAP plug-ins.
-
- If you cancel a running GIMP-GAP plug-in with the cancel button
- in the progress window,
- or kill it from your operating sytem the lock may remain.
- (This should only happen to WINDOWS users, for UNIX users
- locks are checked for dead process ids)
-
- To unlock you can save the current frame image,
- close all views to that image, then reload the frame image.
- (or quit and restart the GIMP)
-
- WARNING:
- It is not recommanded to open more than one frame of
- an animation at the same time.
- (menu: File/Open "img_000001.xcf"
- menu: File/Open "img_000002.xcf")
-
- In this constellation both gap plug-ins may concurrent
- in save/load to/from the same file.
- Example:
- call from "img_000001.xcf" Video/Delete Frames (range 000001 to 000003)
- now img_000004.xcf is renamed to img_000001.xcf
- img_000005.xcf is renamed to img_000002.xcf
-
- then
- call from "img_000002.xcf" Video/Goto First
- the img_000002.xcf (its old content) is saved,
- overwiting wht was img_000004.xcf before.
- If you make the 2.nd call while the 1.st one is in progress,
- you may trash your frames (2 writers on one file) and/or crash
- your GIMP session.
-
-
- - Animated calls of plug-in filters:
- - ----------------------------------
-
- First of all, you need a multilayered Image.
- You can use "<Image>/Video/Frames to Image"
- to create one from a series of frames,
- or duplicate the backround layer of a single layered image
- (Press Ctrl-C within the layers dialog window N-times)
-
- Then call from wihin the multilayer image:
-
- "<Image>/Filters/Filter all Layers"
-
- You'll get a window similar to the PDB-Browser, that shows
- all available plug-ins in a listbox (and informations about
- the selected plug-in on the right side).
-
- Note: The listbox does not show the full PDB.
- (Plug-Ins without run-mode, image, drawable parameters
- are never listed here, regardless to your wildcard selection)
-
- Select one of the listed plug-ins and press one of the buttons:
-
- "Apply Varying":
- The selected plug-in is called 2 times in interactive mode,
- 1. for the backround layer
- 2. for the top layer.
-
- For all further layers, the plug-in will work non-interactive
- with the iterated inbetween values.
- Therefore the plug-in must have an "_Iterator" or "_Iterator_ALT"
- procedure, to modify the "last stored values"
-
- (GIMP-GAP provides such procedures for more than 50 existing plug-ins)
-
- If the iterator procedure is not available, the
- "Apply Varying" button is set insensitive on the selected procedure.
-
- Note:
- It is possible to iterate values of the type PARAM_DRAWABLE,
- (such as the BumpMap in plug_in_bump_map:
- You may use a layerstack-animated Image as animated Bump-map)
- This will only work, if from and to values are layers within the same image.
- The iteration is done on the layerstackindex in that case.
- and the inbetween values for the non-interactive filtercalls
- will be the layers between the from and to layerstackindex.
- (an animation sequence as the user might expect)
-
- "Apply Constant":
- The selected plug-in is called only once in interactive mode,
- For all further layers, the plug-in will work non-interactive
- using the last stored values.
-
-
- The script sel-to-anim-img.scm simplifies the creation of animated
- images. Invoke the script from:
-
- "<Image>/Script-Fu/Animators/Sel To AnimImage"
-
- The script creates a new image with n copies of the current selection.
- Then it invokes the animated call of plug-in filters (optional)
- on the generated new image.
-
- Note: - Some plug-ins may not work correct or crash when called
- in NON_INTERACTIVE mode. (see TESTPROT_iter_ALT)
-
- - Some pug-in's in your PDB can have earlier or later versions
- If their interfaces were changed and does not match with the
- interface version of the iterator procedure
- you get the message:(in the shell window)
-
- ERROR: xxxx_Iterator stored Data missmatch in size N != M
-
- when using the "Apply Varying" button.
- In that case you can try to generate the needed _Iterator procedure
- for your plug-ins current interface by yourself.
- (see file: README_devlopers)
-
-
- - How to write (or generate) animated plug-ins:
- (see file: README_devlopers)
-
- - Filtermacro scripts:
- - --------------------
-
- Start from Menu:
-
- "<Image>/Filters/Filtermacro"
-
- WARNINGS:
- - fltermacro scripts are a temporary solution. Support may be removed
- in future releases of gimp-gap.
- - filtermacros are restricted to plug-ins that are able to run with LAST_VALUES.
- - filtermacro scriptfiles are machine dependent, plug-in version dependent,
- and may not work in the expected way or even crash at execution on other machines
- or on execution with newer versions of the recorded filter plug-ins.
-
- Filename:
- Name of the filtermacro scriptfile.
-
- Delete All button:
- Delete the filtermacro scriptfile.
-
- Delete button:
- Delete the currently selected filtercall from the filtermacro scriptfile.
-
- Add
- Add a new filtercall to the filtermacro scriptfile.
- This button opens a PDB browser dialog window,
- where you can select filters that have been already used
- within the current GIMP-session.
- The PDB browser will show only filters that can
- operate on a drawable and have stored the parameters
- of the last run (in the current Session)
-
- Cancel
- Close the window.
-
- OK
- Close the window and apply all the filtercalls
- that are listed in the filtermacro scriptfile
- with their recorded parameters to the
- current drawable.
- (this is the drawable from where the 'Filter Macro' dialog
- was invoked from)
-
-
- Tip:
- Filtermacro execution can be used in the same way as a single
- filtercall, together with the
- 'Filter All Layers' and the
- 'Frames Modify'
- features of gimp-gap. This way you can apply a set of filtercalls
- on all layers of a multilyer image
- (or on all selected layers in multiple frames)
- at once
-
-
- --------------------------------------------------------------------
- Video Configuration (gimprc)
- --------------------------------------------------------------------
-
- There are optional configuration values for the GIMP-GAP video plug-ins.
- Those values are stored in your personal gimprc file (located in $HOME/.gimp-1.3/gimprc)
- or in the system-wide gimprc file (usually located at /usr/local/etc/gimp/1.3/gimprc)
-
- If you edit gimprc files by hand, you must do this before you startup GIMP.
-
-
- # there are 2 Values to define direcory and basename
- # for Video Copy/Cut/Paste operations
- (video-paste-dir "/home/hof/gap_video_paste_dir")
- (video-paste-basename "gap_video_paste_")
-
- # the video-confirm-frame-delete can have values "yes" or "no"
- # where "no" does not show the confirm dialog windows when the user
- # tries to delete video frames of the video.
- # (default is "yes")
- (video-confirm-frame-delete "yes")
-
- # optional external audioconverter program
- # must be able to handle the same parameters as the
- # standard converter script audioconvert_to_wav.sh
- # There is NO need for the audioconvert_program gimprc configuration
- # if you use the standard converter script.
- (audioconvert_program "/usr/local/bin/my_private_audioconverter")
-
-
- # NON-XCF frame save behaviour:
- # -----------------------------
- # if you want to use GIMP-GAP with other fileformats than XCF
- # for your frames, you will get a warning dialog at the first
- # attempt (per GIMP-session) to save one of the frames with GIMP-GAP plug-ins.
- # If you dont want this warning dialog, you can use the gimprc
- # file to configure how GIMP-GAP should save frames depending on the
- # extension.
- # for all configured fileformat extensions GIMP-GAP uses the configuration from the
- # gimprc file and does not show the warning dialog.
- # Here are recommanded gimprc configuration settings
- # for some common used fileformats:
-
- (video-save-flattened-jpg "yes")
- (video-save-flattened-jpeg "yes")
- (video-save-flattened-bmp "yes")
- (video-save-flattened-png "yes")
- (video-save-flattened-ppm "yes")
- (video-save-flattened-xjt "no")
- (video-save-flattened-gif "no")
-
-
- ======================================================
- Internal PDB names and menu names of GIMP-GAP plug-ins
- ======================================================
-
- plug_in_bluebox "<Image>/Video/Bluebox"
- plug_in_filter_macro "<Image>/Filters/Filtermacro"
- plug_in_gap_anim_crop "<Image>/Video/Frames Crop"
- plug_in_gap_anim_resize "<Image>/Video/Frames Resize"
- plug_in_gap_anim_scale "<Image>/Video/Frames Scale"
- plug_in_gap_del "<Image>/Video/Delete Frames"
- plug_in_gap_density "<Image>/Video/Frames Density"
- plug_in_gap_dup "<Image>/Video/Duplicate Frames"
- plug_in_gap_exchg "<Image>/Video/Exchange Frame"
- plug_in_gap_first "<Image>/Video/Goto First"
- plug_in_gap_goto "<Image>/Video/Goto Any"
- plug_in_gap_last "<Image>/Video/Goto Last"
- plug_in_gap_layers_run_animfilter "<Image>/Filters/Filter all Layers"
- plug_in_gap_modify "<Image>/Video/Frames Modify"
- plug_in_gap_move "<Image>/Video/Move Path"
- plug_in_gap_mpeg2encode "<Image>/Video/Encode/MPEG2 (mpeg2encode)"
- plug_in_gap_mpeg_encode "<Image>/Video/Encode/MPEG1 (mpeg_encode)"
- plug_in_gap_navigator "<Image>/Video/VCR Navigator"
- plug_in_gap_next "<Image>/Video/Goto Next"
- plug_in_gap_onionskin_configuration "<Image>/Video/Onionskin/Configuration"
- plug_in_gap_prev "<Image>/Video/Goto Prev"
- plug_in_gap_range_convert "<Image>/Video/Frames Convert"
- plug_in_gap_range_flatten "<Image>/Video/Frames Flatten"
- plug_in_gap_range_layer_del "<Image>/Video/Frames LayerDel"
- plug_in_gap_range_to_multilayer "<Image>/Video/Frames to Image"
- plug_in_gap_renumber "<Image>/Video/Frames Renumber"
- plug_in_gap_shift "<Image>/Video/Framesequence Shift"
- plug_in_gap_split "<Image>/Video/Split Img to Frames"
- plug_in_gap_videoframes_player "<Image>/Video/Playback"
- plug_in_gap_xanim_decode "<Image>/Video/Split Video to Frames/Any XANIM readable"
- plug_in_gap_xanim_decode_toolbox "<Toolbox>/Xtns/Split Video to Frames/Any XANIM readable"
-
- script-fu-selection-to-anim-image "<Image>->Script-Fu->Animators->Sel To AnimImage"
-
- plug_in_gap_get_animinfo ** NON_INTERACTIVE batchscript API
- plug_in_gap_move_path_ext ** NON_INTERACTIVE batchscript API
- plug_in_gap_move_path_ext2 ** NON_INTERACTIVE batchscript API using a controlpoint file
- plug_in_gap_set_framerate ** NON_INTERACTIVE batchscript API
- plug_in_gap_video_edit_clear ** NON_INTERACTIVE batchscript API
- plug_in_gap_video_edit_copy ** NON_INTERACTIVE batchscript API
- plug_in_gap_video_edit_paste ** NON_INTERACTIVE batchscript API
-